package com.crowdsourcing.service;


import com.crowdsourcing.model.Task;

import java.util.List;

/**
 * @author renbaojia 1406423298@qq.ocom
 * @version 1.0
 * @CREATED 2019/3/5 13:12:59
 * @des
 * @修改记录:
 **/

public interface ITaskService {
    /**
     * 保存
     *
     * @param content
     * @param userId
     * @param title
     */
    void save(String content, Integer userId, String title);

    List<Task> all(Integer usrId);

    /**
     * @param content  处理内容
     * @param taskId   任务id
     * @param handleId 处理人id
     */
    void handle(String content, Integer taskId, Integer handleId);

    /**
     * 查询已处理的任务
     *
     * @param handleId
     * @return
     */
    List<Task> publisher(Integer handleId);

    /**
     * 查询接收的任务
     *
     * @param userId
     * @return
     */
    List<Task> receive(Integer userId);

    /**
     * 查询已发布，已处理完成的任务
     *
     * @param userId
     * @return
     */
    List<Task> receiveFinish(Integer userId);

    /**
     * 查询已发布，未处理完成的任务
     *
     * @param userId
     * @return
     */
    List<Task> receiveNoFinish(Integer userId);

    /**
     * 发布的所有未处理任务
     *
     * @return
     */
    List<Task> allReceive();

    /**
     * 查看已接的任务
     *
     * @param id
     * @return
     */
    List<Task> finishReceive(Integer id);

    /**
     * 保存处理任务
     *
     * @param taskId
     * @param content
     * @param id
     * @return
     */
    void saveReceive(Integer taskId, String content, Integer id);

    /**
     * 查找任务
     *
     * @param taskId
     * @return
     */
    Task find(Integer taskId);
}